package com.deyuanyun.pic.ctrl.excelImport;

import com.deyuanyun.pic.common.validator.annotations.DataValidate;
import com.deyuanyun.pic.ctrl.annotation.*;
import com.deyuanyun.pic.ctrl.util.AutoImportInterface;
import com.deyuanyun.pic.ctrl.validatefun.AutoPile;
import com.deyuanyun.pic.ctrl.validatefun.EnumValidata;
import com.deyuanyun.pic.ctrl.validatefun.MileageValid;
import com.deyuanyun.pic.ctrl.validatefun.PipeLineValidata;

import java.util.Date;

/**

说明:Z:\excel\涂层检测与评价\3管道埋深测试记录表（导入、导出）.xlsx

**/
@DbTable(name="PIC_CTRL_EXINSP_BURIED_DEPTH",startRow=4,sumCell=17,excelName="管道埋深测试记录表.xlsx")
public class PicCtrlExinspBuriedDepthExcel implements AutoImportInterface
{

      /**
      * 管道名称
      */
      @Head( name="管道名称",row=2,cell=0)
      @DbFiled( name="PIPE_LINE_ID" ,type="CHAR")
      @DataValidate(notNull = true,myFunction = PipeLineValidata.class,myFunctionMessage="管道信息与项目要求管道不一致")
      private String pipeLineId;

      /**
      * 检测点编号
      */
      @Head( name="检测点编号",row=2,cell=1)
      @DbFiled( name="DETECTION_POINT_NUMBER" ,type="VARCHAR")
      @DataValidate(lengthLimit="50",lengthLimitMessage = "长度不符合规范，最多50个字")
      private String detectionPointNumber;

      /**
      * 测试桩编号
      */
      @Head( name="测试桩编号",row=2,cell=2)
      @DbFiled( name="TEST_STATION_ID" ,type="CHAR")
      @DataValidate(myFunction = AutoPile.class,myFunctionMessage="测试桩不存在")
      private String testStationId;

      /**
      * X
      */
      @Head( name="X",row=3,cell=3)
      @DbFiled( name="POSITION_X" ,type="NUMBER")
      @DataValidate(type = Number.class)
      private String positionX;

      /**
      * Y
      */
      @Head( name="Y",row=3,cell=4)
      @DbFiled( name="POSITION_Y" ,type="NUMBER")
      @DataValidate(type = Number.class)
      private String positionY;

      /**
      * Z
      */
      @Head( name="Z",row=3,cell=5)
      @DbFiled( name="POSITION_Z" ,type="NUMBER")
      @DataValidate(type = Number.class)
      private String positionZ;

      /**
      * 现场测试绝对距离（m）
      */
      @Head( name="现场测试绝对距离（m）",row=3,cell=6)
      @DbFiled( name="FIELD_TEST_ABSOLUTE_DISTANCE" ,type="NUMBER")
      @DataValidate(type = Number.class,myFunction = MileageValid.class)
      private String fieldTestAbsoluteDistance;

      /**
      * 相对测试桩的距离（m）
      */
      @Head( name="相对测试桩的距离（m）",row=3,cell=7)
      @DbFiled( name="RELATIVE_TEST_PILE_DISTANCE" ,type="NUMBER")
      @DataValidate(type = Number.class,myFunction = MileageValid.class)
      private String relativeTestPileDistance;

      /**
      * 埋深（m）
      */
      @Head( name="埋深（m）",row=2,cell=8)
      @DbFiled( name="BURIED_DEPTH" ,type="NUMBER")
      @DataValidate(type = Number.class)
      private String buriedDepth;

      /**
      * 敷设状况评价
      */
      @EnumVail(enumClass=com.deyuanyun.pic.ctrl.enumeration.EvaluationLayingConditionEnum.class,valMethod="getVal")
      @Head( name="敷设状况评价",row=2,cell=9)
      @DbFiled( name="EVALUATION_OF_LAYING_CONDITION" ,type="VARCHAR2")
      @DataValidate(myFunctionMessage="可选值无对应值",myFunction = EnumValidata.class)
      private String evaluationOfLayingCondition;

      /**
      * 修复措施
      */
      @Head( name="修复措施",row=2,cell=10)
      @DbFiled( name="REPAIR_MEASURES" ,type="VARCHAR2")
      @DataValidate(lengthLimit="50",lengthLimitMessage = "长度不符合规范，最多50个字")
      private String repairMeasures;

      /**
      * 检测日期
      */
      @Head( name="检测日期",row=2,cell=11)
      @DbFiled( name="TESTING_DATE" ,type="DATE")
      @DataValidate(type = Date.class,notNull = true)
      private String testingDate;

      /**
      * 检测单位
      */
      @Head( name="检测单位",row=2,cell=12)
      @DbFiled( name="TESTING_COMPANY" ,type="VARCHAR2")
      @DataValidate(notNull = true,lengthLimit="50",lengthLimitMessage = "长度不符合规范，最多50个字")
      private String testingCompany;

      /**
      * 记录人
      */
      @Head( name="记录人",row=2,cell=13)
      @DbFiled( name="RECORDER" ,type="VARCHAR2")
      @DataValidate(lengthLimit="50",lengthLimitMessage = "长度不符合规范，最多50个字")
      @AutoLoginUser
      private String recorder;

      /**
      * 记录时间
      */
      @Head( name="记录时间",row=2,cell=14)
      @DbFiled( name="RECORD_TIME" ,type="DATE")
      @DataValidate(type = Date.class)
      @AutoDate
      private String recordTime;

      /**
      * 备注
      */
      @Head( name="备注",row=2,cell=15)
      @DbFiled( name="REMARKS" ,type="VARCHAR2")
      @DataValidate(lengthLimit="50",lengthLimitMessage = "长度不符合规范，最多50个字")
      private String remarks;

      /**
      * id
      */
      @DbFiled( name="ID_")
      @AutoId
      private String id;

    @DbFiled( name="MILEAGE",type = "NUMBER")
    private String mileage;

    @DbFiled( name="NAGM")
    private String nagm;

    @DbFiled( name="NAGM_MILEAGE",type = "NUMBER")
    private String nagmMileage;

    @AutoExinspTask
    @DbFiled( name="EXINSP_TASK_ID",type="VARCHAR2")
    private String exinspTaskId;

    @DbFiled( name="DATA_STATED",type="VARCHAR2")
    private String dataStated;

    @DbFiled( name="IS_NEWEST",type="NUMBER")
    private String isNewset;

    public String getIsNewset() {
        return isNewset;
    }

    public void setIsNewset(String isNewset) {
        this.isNewset = isNewset;
    }
    public String getDataStated() {
        return dataStated;
    }

    public void setDataStated(String dataStated) {
        this.dataStated = dataStated;
    }

    public String getExinspTaskId() {
        return exinspTaskId;
    }

    public void setExinspTaskId(String exinspTaskId) {
        this.exinspTaskId = exinspTaskId;
    }


    public String getNagm() {
        return nagm;
    }

    public void setNagm(String nagm) {
        this.nagm = nagm;
    }

    public String getNagmMileage() {
        return nagmMileage;
    }

    public void setNagmMileage(String nagmMileage) {
        this.nagmMileage = nagmMileage;
    }
    public String getMileage() {
        return mileage;
    }

    public void setMileage(String mileage) {
        this.mileage = mileage;
    }

    public String getPipeLineId()
    {

        return  this.pipeLineId;
    }
    public void setPipeLineId(String pipeLineId)
    {

      this.pipeLineId=pipeLineId;
    }


    public String getDetectionPointNumber()
    {

        return  this.detectionPointNumber;
    }
    public void setDetectionPointNumber(String detectionPointNumber)
    {

      this.detectionPointNumber=detectionPointNumber;
    }


    public String getTestStationId()
    {

        return  this.testStationId;
    }
    public void setTestStationId(String testStationId)
    {

      this.testStationId=testStationId;
    }


    public String getPositionX()
    {

        return  this.positionX;
    }
    public void setPositionX(String positionX)
    {

      this.positionX=positionX;
    }


    public String getPositionY()
    {

        return  this.positionY;
    }
    public void setPositionY(String positionY)
    {

      this.positionY=positionY;
    }


    public String getPositionZ()
    {

        return  this.positionZ;
    }
    public void setPositionZ(String positionZ)
    {

      this.positionZ=positionZ;
    }


    public String getFieldTestAbsoluteDistance()
    {

        return  this.fieldTestAbsoluteDistance;
    }
    public void setFieldTestAbsoluteDistance(String fieldTestAbsoluteDistance)
    {

      this.fieldTestAbsoluteDistance=fieldTestAbsoluteDistance;
    }


    public String getRelativeTestPileDistance()
    {

        return  this.relativeTestPileDistance;
    }
    public void setRelativeTestPileDistance(String relativeTestPileDistance)
    {

      this.relativeTestPileDistance=relativeTestPileDistance;
    }


    public String getBuriedDepth()
    {

        return  this.buriedDepth;
    }
    public void setBuriedDepth(String buriedDepth)
    {

      this.buriedDepth=buriedDepth;
    }


    public String getEvaluationOfLayingCondition()
    {

        return  this.evaluationOfLayingCondition;
    }
    public void setEvaluationOfLayingCondition(String evaluationOfLayingCondition)
    {

      this.evaluationOfLayingCondition=evaluationOfLayingCondition;
    }


    public String getRepairMeasures()
    {

        return  this.repairMeasures;
    }
    public void setRepairMeasures(String repairMeasures)
    {

      this.repairMeasures=repairMeasures;
    }


    public String getTestingDate()
    {

        return  this.testingDate;
    }
    public void setTestingDate(String testingDate)
    {

      this.testingDate=testingDate;
    }


    public String getTestingCompany()
    {

        return  this.testingCompany;
    }
    public void setTestingCompany(String testingCompany)
    {

      this.testingCompany=testingCompany;
    }


    public String getRecorder()
    {

        return  this.recorder;
    }
    public void setRecorder(String recorder)
    {

      this.recorder=recorder;
    }


    public String getRecordTime()
    {

        return  this.recordTime;
    }
    public void setRecordTime(String recordTime)
    {

      this.recordTime=recordTime;
    }


    public String getRemarks()
    {

        return  this.remarks;
    }
    public void setRemarks(String remarks)
    {

      this.remarks=remarks;
    }


    public String getId()
    {

        return  this.id;
    }
    public void setId(String id)
    {

      this.id=id;
    }





}